package com.financing.wap.dao.impl;


import java.sql.SQLException;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Repository;
import com.financing.wap.dto.DstVirtualGoodsDTO;
import com.financing.wap.dao.IDstVirtualGoodsDao;
import com.financing.wap.common.SqlName;
/**
 * dst_virtual_goods  
 * 虚拟商品表 数据访问层实现类
 * @author huqiyun
 *
 */
 
@Repository("dstVirtualGoodsDao")
public class DstVirtualGoodsDaoImpl extends BaseDaoImpl<DstVirtualGoodsDTO, java.lang.Integer> implements IDstVirtualGoodsDao {


	@Override
	public int insert(DstVirtualGoodsDTO dstVirtualGoods) throws SQLException {
		return (Integer) this.sqlMapClientTemplate.insert(SqlName.DstVirtualGoodsSql.insert, dstVirtualGoods);
	}

	@Override
	public void update(DstVirtualGoodsDTO dstVirtualGoods) throws SQLException {
		this.sqlMapClientTemplate.update(SqlName.DstVirtualGoodsSql.update, dstVirtualGoods);
	}

	@Override
	public void updateForce(DstVirtualGoodsDTO dstVirtualGoods) throws SQLException {
		this.sqlMapClientTemplate.update(SqlName.DstVirtualGoodsSql.updateForce, dstVirtualGoods);
	}

	@Override
	public void delete(Integer id) throws SQLException {
		this.sqlMapClientTemplate.delete(SqlName.DstVirtualGoodsSql.delete,id);
	}
	
	@SuppressWarnings("unchecked")	
	@Override
	public List<DstVirtualGoodsDTO> queryList(DstVirtualGoodsDTO dstVirtualGoods) throws SQLException {
		return this.sqlMapClientTemplate.queryForList(SqlName.DstVirtualGoodsSql.queryList, dstVirtualGoods);
	}

	@Override
	public int queryListCount(DstVirtualGoodsDTO dstVirtualGoods) throws SQLException {
		return (Integer) this.sqlMapClientTemplate.queryForObject(SqlName.DstVirtualGoodsSql.queryListCount, dstVirtualGoods);
	}

	@Override
	public DstVirtualGoodsDTO loadById(Integer id) throws SQLException {
		return  (DstVirtualGoodsDTO)this.getSqlMapClientTemplate().queryForObject(SqlName.DstVirtualGoodsSql.loadById,id);
	}

	@Override
	public Class<DstVirtualGoodsDTO> getEntityClass() {
		return DstVirtualGoodsDTO.class;
	}
 	
}
